iT邦幫忙

0

[SwiftUI] 如何統計數字重複的次數

  • 分享至 

  • xImage
  •  

如果我有一個數字的陣列變數[2, 1, 2, 3, 5, 6, 8, 9],想要計算(0~9)各個數字在陣列中重複的次數。
->
0: 0次
1: 1
2: 2
3: 1
4: 0
5: 1
6: 1
7: 0
8: 1
9: 1
請問該怎麼寫能實現呢?謝謝大家。


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
一級屠豬士
iT邦大師 1 級 ‧ 2021-11-28 19:09:14

https://ithelp.ithome.com.tw/upload/images/20211128/200506470Y0YoE2F5l.png

#!/usr/bin/swift

let arr = [2, 1, 2, 3, 5, 6, 8, 9]
let counts = arr.reduce(into: [:]) { counts, word in counts[word, default: 0] += 1 }
print(counts)
mohri iT邦新手 5 級 ‧ 2021-11-29 11:11:23 檢舉

感謝您的回覆,我想要計算數字出現的次數,並且分別指定到不同的變數,再去作後面的運算,是不是需要用for迴圈,讓0~9的數字分別去跟陣列中的數字比較呢?像是excel裡面的countif指令。

既然你要用一堆變數,那就判斷,然後各自加囉.

mohri iT邦新手 5 級 ‧ 2021-11-29 15:26:06 檢舉

繼續試試看!

0
mohri
iT邦新手 5 級 ‧ 2021-11-29 13:54:12

請問,如果我寫了這一小段,是那邊出錯了呀?

@State var rep0 = 0
    
let Array = [1,1,2,3,3,4,5,6]

ForEach (Array[0..<9]) { i in
     if Array[i] == 0 {
       rep0 = rep0 + 1             
       }
 }

你應該先把 for , foreach 先熟練一下.

mohri iT邦新手 5 級 ‧ 2021-11-29 16:28:29 檢舉

努力學習中XD

我要留言

立即登入留言